<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>post (1 of 3 overloads)</title>
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../../index.html" title="Asio">
<link rel="up" href="../post.html" title="post">
<link rel="prev" href="../post.html" title="post">
<link rel="next" href="overload2.html" title="post (2 of 3 overloads)">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr><td valign="top"><img alt="asio C++ library" width="250" height="60" src="../../../asio.png"></td></tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../post.html"><img src="../../../prev.png" alt="Prev"></a><a accesskey="u" href="../post.html"><img src="../../../up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../home.png" alt="Home"></a><a accesskey="n" href="overload2.html"><img src="../../../next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h4 class="title">
<a name="asio.reference.post.overload1"></a><a class="link" href="overload1.html" title="post (1 of 3 overloads)">post (1 of 3 overloads)</a>
</h4></div></div></div>
<p>
          Submits a completion token or function object for execution.
        </p>
<pre class="programlisting">template&lt;
    typename CompletionToken&gt;
<a class="link" href="../asynchronous_operations.html#asio.reference.asynchronous_operations.automatic_deduction_of_initiating_function_return_type"><span class="emphasis"><em>DEDUCED</em></span></a> post(
    CompletionToken &amp;&amp; token);
</pre>
<p>
          This function submits an object for execution using the object's associated
          executor. The function object is queued for execution, and is never called
          from the current thread prior to returning from <code class="computeroutput">post()</code>.
        </p>
<p>
          This function has the following effects:
        </p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
              Constructs a function object handler of type <code class="computeroutput">Handler</code>,
              initialized with <code class="computeroutput">handler(forward&lt;CompletionToken&gt;(token))</code>.
            </li>
<li class="listitem">
              Constructs an object <code class="computeroutput">result</code> of type <code class="computeroutput">async_result&lt;Handler&gt;</code>,
              initializing the object as <code class="computeroutput">result(handler)</code>.
            </li>
<li class="listitem">
              Obtains the handler's associated executor object <code class="computeroutput">ex</code> by
              performing <code class="computeroutput">get_associated_executor(handler)</code>.
            </li>
<li class="listitem">
              Obtains the handler's associated allocator object <code class="computeroutput">alloc</code>
              by performing <code class="computeroutput">get_associated_allocator(handler)</code>.
            </li>
<li class="listitem">
              Performs <code class="computeroutput">ex.post(std::move(handler), alloc)</code>.
            </li>
<li class="listitem">
              Returns <code class="computeroutput">result.get()</code>.
            </li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2003-2018 Christopher M. Kohlhoff<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="../post.html"><img src="../../../prev.png" alt="Prev"></a><a accesskey="u" href="../post.html"><img src="../../../up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../home.png" alt="Home"></a><a accesskey="n" href="overload2.html"><img src="../../../next.png" alt="Next"></a>
</div>
</body>
</html>
